import axios from "axios";


// 基础配置
axios.defaults.baseURL = import.meta.env.VITE_API_URL;
axios.defaults.headers.post['Content-Type'] = 'application/json';
axios.defaults.timeout = 4000000000;

// 拦截器
// 添加请求拦截器
axios.interceptors.request.use(
    (config) => {
        // 将token放到头部位置
        config.headers.setAuthorization("Bearer token");
        return config;
    },
    (error) => {
        console.log(error);
        return Promise.reject('axios网络请求异常！');
    }
)

// 添加响应拦截器
axios.interceptors.response.use(
    (response) => {
        if (response.data?.status === 200) {
            return response.data.data;
        } else if (response.data?.status === 201) {
            top?.location.reload();
            return Promise.reject("用户未登录，请先登录！");
        } else {
            return Promise.reject(response.data?.message ?? '网络链接异常');
        }
    },
    (error) => {
        return Promise.reject(error?.response?.data?.message ?? '网络链接异常');
    }
)

export default axios;